데이터베이스 튜닝 계획서 :: 오라클 실습[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

오라클 실습
[1]
등록일:2009-05-28 00:35:00 (0%)
작성자:
제목:데이터베이스 튜닝 계획서

1. 개요

Oracle DBMS를 사용하는 퇴직연금시스템의 SQL 과 Server튜닝 계획 및 절차에 대해 정의

 

2. 튜닝 대상

2.1 Application 튜닝

  1. Online Program

  2. Batch Program

2.2  Server Tuning

         Memory

         Disk I/O

         Contention

         -  Database Writer

         -  Rollback Segments

         -  Redo log file

         -  Buffer Cash Latches

         -  Library Cash Latches

         -  Locking Contention

         Sort

         RAC

 

3. 튜닝 방법

3.1  Application 튜닝

3.1.1  대상선별 및 진척관리

     1. 튜닝 대상은 전체 프로그램 이며, 공정 진척상 개발이 100% 진행된 것을 우선적으로 수행 한다

     2. 튜닝 진척 사항은 SQL 튜닝 관리대장을 만들어 프로그램별 튜닝 진행사항을 기록한다

     3. 튜닝 사항이 없는 프로그램은 관리대장에 ‘튜닝사항 없음’으로 기록한다

     4. SQL 튜닝 관리대장에서 Online과 Batch 프로그램은 서로 다른 Sheet로 분리하여 관리한다

     5.  SQL에 대한 튜닝 세부 내용은 <프로그램ID>.sql 로 별도 관리한다

3.1.2 공통 점검 사항

-.Dual Table 사용추출 : Query절에서의 불필요한 Dual Table상요을 체크한다. 특히 sysdate, sequence, function의 값을 1회 이하 사용시에 Dual조회는 수정 대상임

-.SELECT * : SELECT구문에 필요한 컬럼만을 사용

-.SELECT (*)의 사용 : 존재 유무 체크시 SELECT 1 FROM.. 또는 SELECT 'X' FROM.. 을 사용하여 부분범위 처리하도록 하며, COUNT를 구하는 경우 INDEX컬럼에 포함된 특정 컬럼을 COUNT하여 불필요한 TABLE SCAN을 방지함

-.HINT점검 : HINT는 되도록 사용하지 않으며, 부분 범위 처리를 위해 INDEX_DESC같은 HINT를 사용할 경우 의도하는 결과가 나오는지 체크

-.SELECT,INSERT,UPDATE구문에 불필요한 함수 사용 : NVL, TO_CHAR등이 불필요하게 사용된 쿼리체크

-.WHERE조건절에서의 함수 사용 : substr, to_char, || 등을 index 컬럼에 사용하여 full scan을 유발하는 구문체크

-.CARTERCIAN JOIN 발생 : join 조건의 누락으로 의도하지 않은 CARTERCIAN JOIN체크

-.UNION 사용 :  UNION의 사용 적절성 체크, UNION ALL로의 변경 가능성 체크

-.INSERT 구문의 컬럼명 누락 : Table layout 변경시 프로그램 오류를 방지하기 위해 insert 하고자 하는 컬럼을 명시

-.TABLE FULL SCAN : 조회결과가 table data 수의 20% 일때 index scan 하도록 유도함

3.1.3 ONLINE PROGRAM

-.공통 점검사항 이외에 ONLINE PROGRAM은 통합테스트 시 기록된 WEB LOG를 분석하여 ELAPS TIME순으로 선별하여 튜닝함

3.1.4 BATCH PROGRAM

-.BATCH PROGRAM은 개별적인 튜닝도 중요하지만 전체적인 로직을 보고 불필요한 루핑이 없는지 점검

 

3.2 서버 튜닝

-. Test 시간동안 Resource 사용율을 수집 (statspack 이용) 하여 분석 후 Oracle  init parameter를 조정

 

4. 결과관리 및 개발자 FEEDBACK

-.튜닝 완료는 개발자의 source 수정이 이루어지고 DBA에 의해 확인 된 시점에 완료

[본문링크] 데이터베이스 튜닝 계획서
[1]
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=31521
작성자
비밀번호

 

SSISOCommunity

[이전]

Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.